使用 for 循环向数组添加元素时,如何避免重复添加问题?
时间 :
2024-10-31,22:19:09
编辑 ::ADMIN
如何避免使用 arrays.push() 在 for 循环中重复添加数组元素
问题:
在使用 for 循环向数组中动态添加字段时,遇到打印重复元素的问题。尽管 for 循环中每个字段的名称正确,但打印时却只有最后一个字段。
原因:
此问题源自将 JavaScript 对象存储在 for 循环外部。
解决方案:
将 var products = {}; 移入 for 循环内部即可解决此问题。
优化代码:
var arrays = new Array(); for(let index=1; index<=currentid; index++) { //新建对象的方式添加数据 const products = {}; products['name'] = $("#name_" + index).val(); console.log(products['name']); arrays.push(products); }